Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2015
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Захист інформації

Частина тексту файла

Міністерство освіти і науки України Національний університет «Львівська політехніка» Кафедра ЕОМ / Звіт з лабораторної роботи № 2 з дисципліни: «Програмні технології захисту інформації» Львів-2015 Тема: Протокол SSH. Реалізація основних функцій. Мета: Реалізувати основні функції протоколу SSH. Теоретичні відомості: Secure Shell, SSH (англ. Secure SHell — «безпечна оболонка») — мережевий протокол рівня застосунків, що дозволяє проводити віддалене управління комп'ютером і тунелювання TCP-з'єднань (наприклад, для передачі файлів). Схожий за функціональністю з протоколом Telnet і rlogin, проте шифрує весь трафік, в тому числі і паролі, що передаються. Криптографічний захист протоколу SSH не фіксований, можливий вибір різних алгоритмів шифрування. Клієнти і сервери, що підтримують цей протокол, доступні для різних платформ. Крім того, протокол дозволяє не тільки використовувати безпечний віддалений shell на машині, але і туннелювати графічний інтерфейс — X Tunnelling (тільки для Unix-подібних ОС або застосунків, що використовують графічний інтерфейс X Window System). Так само ssh здатний передавати через безпечний канал (Port Forwarding) будь-який інший мережевий протокол, забезпечуючи (при належній конфігурації) можливість безпечної пересилки не тільки X-інтерфейсу, але і, наприклад, звуку. Основні функції для роботи з протоколом SSH Обмін ключами: public abstract class KeyExchange { internal const int PROPOSAL_KEX_ALGS=0; internal const int PROPOSAL_SERVER_HOST_KEY_ALGS=1; internal const int PROPOSAL_ENC_ALGS_CTOS=2; internal const int PROPOSAL_ENC_ALGS_STOC=3; internal const int PROPOSAL_MAC_ALGS_CTOS=4; internal const int PROPOSAL_MAC_ALGS_STOC=5; internal const int PROPOSAL_COMP_ALGS_CTOS=6; internal const int PROPOSAL_COMP_ALGS_STOC=7; internal const int PROPOSAL_LANG_CTOS=8; internal const int PROPOSAL_LANG_STOC=9; internal const int PROPOSAL_MAX=10; //static String kex_algs="diffie-hellman-group-exchange-sha1"+ // ",diffie-hellman-group1-sha1"; //static String kex="diffie-hellman-group-exchange-sha1"; internal static String kex="diffie-hellman-group1-sha1"; internal static String server_host_key="ssh-rsa,ssh-dss"; internal static String enc_c2s="blowfish-cbc"; internal static String enc_s2c="blowfish-cbc"; internal static String mac_c2s="hmac-md5"; // hmac-md5,hmac-sha1,hmac-ripemd160, // hmac-sha1-96,hmac-md5-96 internal static String mac_s2c="hmac-md5"; //static String comp_c2s="none"; // zlib //static String comp_s2c="none"; internal static String lang_c2s=""; internal static String lang_s2c=""; public const int STATE_END=0; public String[] guess=null; protected Session session=null; protected HASH sha=null; protected byte[] K=null; protected byte[] H=null; protected byte[] K_S=null; public abstract void init(Session session, byte[] V_S, byte[] V_C, byte[] I_S, byte[] I_C); public abstract bool next(Buffer buf); public abstract String getKeyType(); public abstract int getState(); /* void dump(byte[] foo){ for(int i=0; i<foo.length; i++){ if((foo[i]&0xf0)==0)System.out.print("0"); System.out.print(Integer.toHexString(foo[i]&0xff)); if(i%16==15){System.out.println(""); continue;} if(i%2==1)System.out.print(" "); } } */ internal static String[] Guess(byte[]I_S, byte[]I_C) { //System.out.println("guess: "); String[] guess=new String[PROPOSAL_MAX]; Buffer sb=new Buffer(I_S); sb.setOffSet(17); Buffer cb=new Buffer(I_C); cb.setOffSet(17); for(int i=0; i<PROPOSAL_MAX; i++) { byte[] sp=sb.getString(); // server proposal byte[] cp=cb.getString(); // client proposal //System.out.println("server-proposal: |"+new String(sp)+"|"); //System.out.println("client-proposal: |"+new String(cp)+"|"); in...
Антиботан аватар за замовчуванням

04.05.2016 14:05

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини